package com.piggy.logi.sys.api.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.piggy.common.core.web.domain.BaseTenantEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 分段价格编辑对象 logi_price_seg
 *
 * @author piggy
 * @date 2023-08-14
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@ApiModel("分段价格编辑对象")
public class LogiPriceSegEditBo extends BaseTenantEntity {


    /** id */
    @ApiModelProperty("id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long id;

    /** 方案id */
    @ApiModelProperty("方案id")
    @NotNull(message = "方案id不能为空")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long planId;

    /** 计费模式 */
    @ApiModelProperty("计费模式")
    private String feeMode;

    /** 开始值(带小数点) */
    @ApiModelProperty("开始值(带小数点)")
    private BigDecimal floatStart;

    /** 结束值(带小数点) */
    @ApiModelProperty("结束值(带小数点)")
    private BigDecimal floatEnd;

    /** 开始值 */
    @ApiModelProperty("开始值")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long intStart;

    /** 结束值 */
    @ApiModelProperty("结束值")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long intEnd;

    /** 价格 */
    @ApiModelProperty("价格")
    private BigDecimal price;

    /** 序号 */
    @ApiModelProperty("序号")
    private Integer sort;

    /** 更新者 */
    @ApiModelProperty("更新者")
    private String updateBy;

    /** 更新时间 */
    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
}
